package com.wootide.cms.service.reservation.bookinfo.pojo;

import java.sql.Timestamp;
import java.util.HashSet;
import java.util.Set;

import com.wootide.cms.service.customer.custmanager.pojo.Customer;
import com.wootide.cms.service.reservation.orderby.pojo.OrderByInfo;
import com.wootide.cms.service.reservation.payment.pojo.PaymentMethodsInfo;
import com.wootide.cms.sys.user.pojo.UserInfo;
/**
 * 预订订单POJO
 * 〈一句话功能简述〉
 * 〈功能详细描述〉
 * @author ozm
 * @version 2013-3-6
 * @see BookOrderInfo
 * @since 2013-3-6下午7:25:48
 */
public class BookOrderInfo implements java.io.Serializable
{
    /**
     * 意义，目的和功能，以及被用到的地方<br>
     */
    private static final long serialVersionUID = 1L;

    //订单ID
    private Integer innerIndex;
    
    //订单方式
    private OrderByInfo orderByInfo;
    
    //客户信息
    private Customer customerInfo;
    
    //用户信息
    private UserInfo userInfo;
    
    //支付方式
    private PaymentMethodsInfo paymentMethodsInfo;
    
    //订单编号
    private String orderNum;
    
    //预订客户名
    private String customerName;
    
    //国籍
    private String nationality;
    
    //电话
    private String tel;
    
    //预订到达时间
    private Timestamp arrivalTime;
    
    //离店时间
    private Timestamp checkOutTime;
    
    //预订数量
    private Integer bookingNumber;
    
    //房间类型
    private Integer roomTypeId;
    
    //房间原单总价
    private Double originalPricePerRoom;
    
    //折价后单价
    private Double pricePerRoom;
    
    //订单实际总价
    private Double roomTotalPrice;
    
    //折扣
    private Double discount;
    
    //预订人姓名
    private String bookerName;
    
    //预订人公司
    private String bookerCompany;
    
    //预订人电话
    private String bookerTel;
    
    //支付状态
    private Integer payStatus;
    
    //订单生成日期
    private Timestamp deneratedDate;
    
    //最长保留时间
    private Integer longestRetention;
    
    //订单描述
    private String description;
    
    //房间时段集合
    @SuppressWarnings("rawtypes")
    private Set roomPeriods;
    
    //桌次时段集合
    @SuppressWarnings("rawtypes")
    private Set tablePeriods;

  

   

    @Override
    public String toString()
    {
        return "BookOrderInfo [innerIndex=" + innerIndex + ", orderByInfo="
                + orderByInfo + ", customerInfo=" + customerInfo
                + ", userInfo=" + userInfo + ", paymentMethodsInfo="
                + paymentMethodsInfo + ", orderNum=" + orderNum
                + ", customerName=" + customerName + ", nationality="
                + nationality + ", tel=" + tel + ", arrivalTime=" + arrivalTime
                + ", checkOutTime=" + checkOutTime + ", bookingNumber="
                + bookingNumber + ", roomTypeId=" + roomTypeId
                + ", originalPricePerRoom=" + originalPricePerRoom
                + ", pricePerRoom=" + pricePerRoom + ", roomTotalPrice="
                + roomTotalPrice + ", discount=" + discount + ", bookerName="
                + bookerName + ", bookerCompany=" + bookerCompany
                + ", bookerTel=" + bookerTel + ", payStatus=" + payStatus
                + ", deneratedDate=" + deneratedDate + ", longestRetention="
                + longestRetention + ", description=" + description + "]";
    }


    public Integer getLongestRetention()
    {
        return longestRetention;
    }


    public void setLongestRetention(Integer longestRetention)
    {
        this.longestRetention = longestRetention;
    }


    public String getDescription()
    {
        return description;
    }


    public void setDescription(String description)
    {
        this.description = description;
    }


    @SuppressWarnings("rawtypes")
    public Set getRoomPeriods()
    {
        return roomPeriods;
    }


    @SuppressWarnings("rawtypes")
    public void setRoomPeriods(Set roomPeriods)
    {
        this.roomPeriods = roomPeriods;
    }


    @SuppressWarnings("rawtypes")
    public Set getTablePeriods()
    {
        return tablePeriods;
    }


    @SuppressWarnings("rawtypes")
    public void setTablePeriods(Set tablePeriods)
    {
        this.tablePeriods = tablePeriods;
    }


    public Integer getInnerIndex()
    {
        return innerIndex;
    }


    public void setInnerIndex(Integer innerIndex)
    {
        this.innerIndex = innerIndex;
    }


    public OrderByInfo getOrderByInfo()
    {
        return orderByInfo;
    }


    public void setOrderByInfo(OrderByInfo orderByInfo)
    {
        this.orderByInfo = orderByInfo;
    }


    public Customer getCustomerInfo()
    {
        return customerInfo;
    }


    public void setCustomerInfo(Customer customerInfo)
    {
        this.customerInfo = customerInfo;
    }


    public UserInfo getUserInfo()
    {
        return userInfo;
    }


    public void setUserInfo(UserInfo userInfo)
    {
        this.userInfo = userInfo;
    }


    public PaymentMethodsInfo getPaymentMethodsInfo()
    {
        return paymentMethodsInfo;
    }


    public void setPaymentMethodsInfo(PaymentMethodsInfo paymentMethodsInfo)
    {
        this.paymentMethodsInfo = paymentMethodsInfo;
    }


    public String getOrderNum()
    {
        return orderNum;
    }


    public void setOrderNum(String orderNum)
    {
        this.orderNum = orderNum;
    }


    public String getCustomerName()
    {
        return customerName;
    }


    public void setCustomerName(String customerName)
    {
        this.customerName = customerName;
    }


    public String getNationality()
    {
        return nationality;
    }


    public void setNationality(String nationality)
    {
        this.nationality = nationality;
    }


    public String getTel()
    {
        return tel;
    }


    public void setTel(String tel)
    {
        this.tel = tel;
    }


    public Timestamp getArrivalTime()
    {
        return arrivalTime;
    }


    public void setArrivalTime(Timestamp arrivalTime)
    {
        this.arrivalTime = arrivalTime;
    }


    public Timestamp getCheckOutTime()
    {
        return checkOutTime;
    }


    public void setCheckOutTime(Timestamp checkOutTime)
    {
        this.checkOutTime = checkOutTime;
    }


    public Integer getBookingNumber()
    {
        return bookingNumber;
    }


    public void setBookingNumber(Integer bookingNumber)
    {
        this.bookingNumber = bookingNumber;
    }


    public Integer getRoomTypeId()
    {
        return roomTypeId;
    }


    public void setRoomTypeId(Integer roomTypeId)
    {
        this.roomTypeId = roomTypeId;
    }


    public Double getOriginalPricePerRoom()
    {
        return originalPricePerRoom;
    }


    public void setOriginalPricePerRoom(Double originalPricePerRoom)
    {
        this.originalPricePerRoom = originalPricePerRoom;
    }


    public Double getPricePerRoom()
    {
        return pricePerRoom;
    }


    public void setPricePerRoom(Double pricePerRoom)
    {
        this.pricePerRoom = pricePerRoom;
    }


    public Double getRoomTotalPrice()
    {
        return roomTotalPrice;
    }


    public void setRoomTotalPrice(Double roomTotalPrice)
    {
        this.roomTotalPrice = roomTotalPrice;
    }


    public Double getDiscount()
    {
        return discount;
    }


    public void setDiscount(Double discount)
    {
        this.discount = discount;
    }


    public String getBookerName()
    {
        return bookerName;
    }


    public void setBookerName(String bookerName)
    {
        this.bookerName = bookerName;
    }


    public String getBookerCompany()
    {
        return bookerCompany;
    }


    public void setBookerCompany(String bookerCompany)
    {
        this.bookerCompany = bookerCompany;
    }


    public String getBookerTel()
    {
        return bookerTel;
    }


    public void setBookerTel(String bookerTel)
    {
        this.bookerTel = bookerTel;
    }


    public Integer getPayStatus()
    {
        return payStatus;
    }


    public void setPayStatus(Integer payStatus)
    {
        this.payStatus = payStatus;
    }


    public Timestamp getDeneratedDate()
    {
        return deneratedDate;
    }


    public void setDeneratedDate(Timestamp deneratedDate)
    {
        this.deneratedDate = deneratedDate;
    }


  
}